home *** CD-ROM | disk | FTP | other *** search
- ANSI.COM
- Command
-
- Michael J. Mefford
- 1989 No. 2 (Utilities)
-
-
- Purpose: A memory-resident utility that enables selectable use of the
- extended screen and keyboard control sequences that normally require loading the
- ANSI.SYS device driver. Unlike ANSI.SYS, ANSI.COM supports all video modes,
- permits sizing and clearing the key-assignment buffer, and provides high-speed
- screen updating.
-
- Format: ANSI [FAST | SLOW][ON | OFF][KON | KOFF][PON | POFF][XON | XOFF]
- [/B nnn][/P nn][/C][/U][/Q][/T]
-
- Remarks: ANSI.COM may be installed either at the DOS prompt or through an
- AUTOEXEC.BAT file. It will not load itself if ANSI.SYS has already been loaded
- as part of a CONFIG.SYS file. ANSI.COM will not load multiple copies of itself,
- so its command name may be invoked repeatedly in the same session to change
- user-selectable parameters.
-
- Upon loading, ANSI defaults to the FAST and ON status parameters. For
- use with IBM CGA video cards (where direct screen writes produce "snow") or with
- some screen capture software, the SLOW (screen writing via the BIOS, as with
- ANSI.SYS) status option may be selected. Entering ANSI OFF disables recognition
- of the ANSI control codes (but reassigned keys are still functional).
-
- Also upon loading ANSI defaults to KON and PON status parameters.
- Entering POFF disables the ANSI reassignment function so no new reassignments
- can be entered until reactivated by PON. Current assignments are still active.
- This prevents unauthorized changes to you keyboard being made by silly people
- who embed ANSI sequences into text documents to do harm to your system.
- Entering KOFF disables the ANSI reassignments but still allows new assignments
- to be made to the buffer or old ones removed. This allows simple ON / OFF
- control of assigments without clearing the buffer and reloading each time
- when a particular program is affected by the assignments. All keyboard
- reassignments in the buffer become active again upon the issuing PON. The /Q
- switch can be used to suppress output when executed. /P nn can be used to
- protect a number of lines at the top of the screen from being scrolled when
- the cursor reaches the bottom of the screen. Scrolling will occur starting
- at the line specified (Zero is the top line and the Default setting.)
- /P* will use the line above the current line. |
-
- The ANSI.COM key assignment buffer defaults to a size of 200 bytes. The
- buffer may be increased to as much as 60K or decreased to 0 bytes by entering
- ANSI with the /B switch and the desired number of bytes as nnn. Resizing the
- buffer after initial installation requires deinstallation, which may be
- accomplished using the /U switch. Current key assignments are lost if the
- buffer is resized. The buffer can be cleared without resizing by invoking ANSI
- with the /C switch.
-
- The full command set of IBM-ANSI control sequences is printed in the
- original article and in the DOS Technical Reference manual. This information
- can also be downloaded from PC Magnet.
-
- Available for downloading from PC MagNet (see the ANSI by Modem
- sidebar), ANSI.COM is already compiled and ready to run. ANSI.BAS will
- automatically create ANSI.COM when run once in BASIC. To create ANSI.COM from
- the ANSI.ASM source code requires use of a macro assembler (IBM or Microsoft,
- Version 2 or later) and the following commands:
-
- New /T option added to test if installed. Attempts to do an uninstall
- without actually uninstalling. If Not Installed an Errorlevel of 1 occurs.
- If already installed the status switches are returned in the ErrorLevel as |
- follows: OFF 1 |
- ON 2 |
- SLOW 4 |
- FAST 8 |
- KOFF 16 |
- KON 32 |
- POFF 64 |
- PON 128 |
- If not already installed, the program will not be installed when testing. |
-
- New /S option will load stat. data from ANSICOM.SYS file for PCBoard
- @Variable@ substitution. This file can be created by another program (I
- will write one soon in QuickBasic) which reads PCBoard.DAT, CNAMES, User.Sys
- and User.Inf and formats the data into the required format of ANSICOM.SYS.
- ANSICOM.ASM shows the format of the storage. The length must be 495 Bytes
- (extra will be ignored, less will issue error message.) Issuing the /S option
- without ANSICOM.SYS being present in the current directory will result in an
- error message also.
-
- If the position in a set cursor position command is beyond the bounds
- of the screen then the highest row or column, as appropriate, is used.
-
- Update 3/2/89 - Fix for DOS function 0Bh, Check Standard Input Status
- and STDIN in ANSI_INT_21 handler.
- Leading zero inserted for Device Status Report for
- single digit cursor positions.
- INFORMATION typo 40 for 40H.
- WRITE_FAST modified to handle CR and LF instead of
- WRITE_CHAR.
- Update 3/7/89 - Fix for CLS in graphics mode. Version 1.2
-
- Update 8/8/89 - STI added to INT 21 and 29 handler. Version 1.3
-
- Update 01/01/90 - [KON | KOFF] and [PON | POFF] added Version 1.31
-
- Update 03/23/90 - /Q option added for no output when exectued 1.32
-
- Update 05/16/90 - removed Syntax from output unless needed 1.33
- added /T test for load.
-
- Update 10/28/90 - added /P nn command to 'Protect' nn lines 1.34
- at the top of the screen from scrolling
- up when the bottom of the screen is reached.
-
- Update 12/01/90 - Added PCBoard @X## color code support 1.35
- also added @Variable@ Support
- added /S to load stats data from file
-
- Update 12/12/90 - My mistake, I didn't realize @X00 saved 1.36
- the color and @XFF restored it. Works now.
- Also made prompts return to start of line
- when cleared (like PCBoard does) & QON
- now changes @MORE@ & @PAUSE@ into @WAIT@
- Gary Meeker (Versions 1.31 to 1.36)
-
- Update 4/20/91 - Change set cursor routine. If new position 1.37
- is off the screen use the last row or column.
- Added switch to not include PCB code.
- Corrected syntax display.
- Modified CLS to honor protected (/P) lines
- Modified /T to returned status switches.
- Modified /P to accept * to mean current row-1.
-
- Update 9/19/91 - Allow ESC[p to clear all KB reassigns and 1.38
- ESC[np to clear single key reassign.
- ie: ESC[65p will reset ascii 65 to it's default [A]
-
- Update 01/01/92 - Added XON/XOFF to control @X## color codes 1.39
- added support for finding relocated copies.
- This should allow LOADHI under DOS 5 or QRAM/QEMM
- (all changes marked with ;^ - Gary Meeker)
- (Was added to my 1.37 version 01/09/91 but now
- incorporated into this version as 1.39 to include
- changes by Wayne Mingee)
-
- MASM ANSI;
- LINK ANSI;
- EXE2BIN ANSI ANSI.COM;
-